meson: gdk: add quartz backend skeleton
authorTim-Philipp Müller <tim@centricular.com>
Mon, 20 Mar 2017 12:18:15 +0000 (12:18 +0000)
committerEmmanuele Bassi <ebassi@gnome.org>
Wed, 3 May 2017 14:10:54 +0000 (15:10 +0100)
Won't even build yet, just put basic bits in place.

gdk/meson.build
gdk/quartz/meson.build [new file with mode: 0644]
meson.build

index 2b428fa3648f486f0ffc98ced3a26b3138a4ff28..bd2af26a4f0a569704bb65c4df0bdf494e0a155a 100644 (file)
@@ -180,7 +180,7 @@ endif
 
 gdk_backends = []
 gdk_backends_gen_headers = []  # non-public generated headers
-foreach backend : ['broadway', 'wayland', 'x11', 'mir', 'win32']
+foreach backend : ['broadway', 'mir', 'quartz', 'wayland', 'win32', 'x11']
   if get_variable('@0@_enabled'.format(backend))
     subdir(backend)
     gdk_deps += get_variable('gdk_@0@_deps'.format(backend))
@@ -193,6 +193,7 @@ foreach backend : ['broadway', 'wayland', 'x11', 'mir', 'win32']
   endif
 endforeach
 
+# FIXME: might have to add '-xobjective-c' to c_args for quartz backend?
 libgdk = static_library('gdk',
   sources: [gdk_sources, gdk_backends_gen_headers, gdkconfig],
   c_args: ['-DGDK_COMPILATION', '-DG_LOG_DOMAIN="Gdk"'],
diff --git a/gdk/quartz/meson.build b/gdk/quartz/meson.build
new file mode 100644 (file)
index 0000000..6ee35b3
--- /dev/null
@@ -0,0 +1,46 @@
+# FIXME: do we need to do an add_language() for objective-c here?
+gdk_quartz_sources = files([
+  'GdkQuartzView.c',
+  'GdkQuartzNSWindow.c',
+  'gdkcursor-quartz.c',
+  'gdkdevice-core-quartz.c',
+  'gdkdevicemanager-core-quartz.c',
+  'gdkdisplay-quartz.c',
+  'gdkdisplaymanager-quartz.c',
+  'gdkdnd-quartz.c',
+  'gdkevents-quartz.c',
+  'gdkeventloop-quartz.c',
+  'gdkglcontext-quartz.c',
+  'gdkglobals-quartz.c',
+  'gdkkeys-quartz.c',
+  'gdkproperty-quartz.c',
+  'gdkscreen-quartz.c',
+  'gdkselection-quartz.c',
+  'gdkutils-quartz.c',
+  'gdkwindow-quartz.c',
+])
+
+gdk_quartz_public_headers = files([
+  'gdkquartzcursor.h',
+  'gdkquartzdevice-core.h',
+  'gdkquartzdevicemanager-core.h',
+  'gdkquartzdisplay.h',
+  'gdkquartzdisplaymanager.h',
+  'gdkquartzdnd.h',
+  'gdkquartzkeys.h',
+  'gdkquartzscreen.h',
+  'gdkquartzutils.h',
+  'gdkquartzwindow.h',
+])
+
+install_headers(gdk_quartz_public_headers, subdir: 'gtk-4.0/gdk/quartz/')
+install_headers('gdkquartz.h', subdir: 'gtk-4.0/gdk/')
+
+gdk_quartz_deps = [ # FIXME
+]
+
+libgdk_quartz = static_library('libgdk-quartz',
+  gdk_quartz_sources, gdkconfig, gdkenum_h,
+  include_directories: [confinc, gdkinc],
+  c_args: ['-DGDK_COMPILATION', '-DG_LOG_DOMAIN="Gdk"', '-xobjective-c'],
+  dependencies: [gdk_deps, gdk_quartz_deps])
index f1fa142e54c75475d0d7cca293408d0560cfba56..e07da1e98797824686053d636390b275c33c0e9a 100644 (file)
@@ -37,6 +37,7 @@ x11_enabled      = get_option('enable-x11-backend')
 wayland_enabled  = get_option('enable-wayland-backend')
 broadway_enabled = get_option('enable-broadway-backend')
 mir_enabled      = get_option('enable-mir-backend')
+quartz_enabled   = false # FIXME
 win32_enabled    = false # FIXME
 
 mkmarshal    = find_program('build_marshal.py')